package eerbaar.elements;

import eerbaar.extension.IExtensible;
import eerbaar.extension.IExtensionPackage;
import eerbaar.position.IPosition;
import eerbaar.position.WrongPositionException;

public interface IElement extends IExtensionPackage, IExtensible {

    void addListener(IElementListener listener);

    IElement copy();

    String getName();

    IPosition getPosition();

    void removeListener(IElementListener listener);

    void setName(String name);

    void setPosition(IPosition position) throws WrongPositionException;

}
